/*
[].forEach()
[].map()
[].find()
[].findIndex()
[].filter()
[].every() 每一个
[].some()  一些
[].reduce()

返回值 return 不一样

// forEach无返回值，一般用于循环
arr.forEach((item, index) => {
	// console.log(index, item)
	return 123
})

// 返回遍历重构的数据 []
const mapRes = arr.map((item, index) => {
	// console.log(index, item)
	// return 123
	// return typeof item
	// return {
	// 	type: typeof(item),
	// 	// item: item
	// 	item,
	// }
	return item * 2
})

// 返回找到的那一项
// const findRes = arr.find((item, index) => {
// 返回找到的那一项的下标索引
const findRes = arr.findIndex((item, index) => {
	// console.log(index, item)
	// return typeof item === "string"
	return item > 50
})

// 将过滤返回符合条件的项 []
const filterRes = arr.filter((item, index) => {
	// console.log(index, item)
	// return item > 50
	// return item > 50
	// return typeof item === "number"
	return typeof item === "string"
})

// 返回布尔值：每一项都必须符合return 的条件
const everyRes = arr.every((item) => {
	// return typeof item === "string"
	// return typeof(item) === "number"
	return typeof(item) === "number" && item >= 12
})

// 返回布尔值：只要有一项符合return 的条件
const someRes = arr.some((item) => {
	// return typeof(item) === "number" && item >= 50
	// return typeof(item) === "number"
	return typeof(item) === "string"
})



const reduceRes = arr.reduce((base, currentItem, currentndex) => {
	console.log(base, currentItem)
	return base + currentItem
}, 100)
console.log(reduceRes)
*/

// const arr = ["44", 34, 99, 12, "abc"]
const arr = [10, 34, 99, 12]
// arr[0], arr[1] - 
/*
10  

1 10

// const reduceRes = arr.reduce((item, index, i) => {
const reduceRes = arr.reduce((base, item, index) => {
	console.log(base, item, index)
	// return base
	return base + item
}, 0)
*/





















